package com.doordu.soa.service.data.vo;

import java.io.Serializable;

import com.doordu.soa.service.web.annotation.DataValid;
import com.doordu.soa.service.web.em.RegexType;
import com.doordu.soa.service.web.fieldvalidator.IntegerChoiceHandler;

import io.swagger.annotations.ApiModelProperty;

/**
 * 岗亭信息[vo类]
 * 
 * @ClassName: ParkingWatchhouseVo
 * @Description:
 * @author xiaoqun.yi yixq@doordu.com
 * @date 2017年9月29日 下午2:27:16
 * @version V1.0
 */
public class ParkingWatchhouseVo extends BaseDataVo implements Serializable {

	/**
	 * @Fields serialVersionUID :
	 */
	private static final long serialVersionUID = 1L;

	@DataValid(description = "停车场编号", maxLength = 150, minLength = 2, nullable = false, regexType = RegexType.NO_SPECIALCHAR)
	@ApiModelProperty(value = "停车场编号(50)", notes = "停车场编号(50)", required = true, dataType = "string")
	private String parkingNo;// 停车场编号

	@DataValid(description = "停车场名称", maxLength = 150, minLength = 2, nullable = false, regexType = RegexType.NO_SPECIALCHAR)
	@ApiModelProperty(value = "停车场名称(200)", notes = "停车场编号(50)", required = true, dataType = "string")
	private String parkingName;// 停车场名称

	@DataValid(description = "数据唯一ID", maxLength = 150, nullable = false, regexType = RegexType.NO_SPECIALCHAR)
	@ApiModelProperty(value = "数据唯一ID(50)", notes = "数据唯一ID(50)", required = true, dataType = "string")
	private String dataId;

	@ApiModelProperty(hidden = true)
	private Long watchhouseId;

	@DataValid(description = "岗亭名称", maxLength = 150, nullable = false, regexType = RegexType.NO_SPECIALCHAR)
	@ApiModelProperty(value = "岗亭名称(200)", notes = "岗亭名称(200)", required = true, dataType = "string")
	private String watchhouseName;

	@DataValid(description = "岗亭编号", maxLength = 150, nullable = false, regexType = RegexType.NO_SPECIALCHAR)
	@ApiModelProperty(value = "岗亭编号(50)", notes = "岗亭编号(50)", required = true, dataType = "string")
	private String watchhouseNumber;

	@DataValid(description = "出入口类型", maxLength = 150, nullable = false, checkHandler = IntegerChoiceHandler.class, choice = { 1, 2 })
	@ApiModelProperty(value = "出入口类型 1:进口 2:出口", notes = "出入口类型 1:进口 2:出口", required = true, dataType = "int")
	private Short entryType;

	@DataValid(description = "使用状态", maxLength = 150, nullable = false, checkHandler = IntegerChoiceHandler.class, choice = { 0, 1, 2 })
	@ApiModelProperty(value = "使用状态 0：未使用  1：使用中 2：已废弃 ", notes = "使用状态 0：未使用  1：使用中 2：已废弃", required = true, dataType = "int")
	private Short watchhouseStatus;

	@DataValid(description = "岗亭创建时间", maxLength = 50, nullable = false, regexType = RegexType.DATE_YYYY_MM_DD_HH_MM_SS)
	@ApiModelProperty(value = "岗亭创建时间(日期格式 yyyy-MM-dd HH:MM:SS)", notes = "岗亭创建时间(YYYYMMDDHHMMSS)", required = true, dataType = "string")
	private String watchhouseCreateTime;

	public String getWatchhouseName() {
		return watchhouseName;
	}

	public void setWatchhouseName(String watchhouseName) {
		this.watchhouseName = watchhouseName;
	}

	public String getWatchhouseNumber() {
		return watchhouseNumber;
	}

	public void setWatchhouseNumber(String watchhouseNumber) {
		this.watchhouseNumber = watchhouseNumber;
	}

	public Short getEntryType() {
		return entryType;
	}

	public void setEntryType(Short entryType) {
		this.entryType = entryType;
	}

	public Short getWatchhouseStatus() {
		return watchhouseStatus;
	}

	public void setWatchhouseStatus(Short watchhouseStatus) {
		this.watchhouseStatus = watchhouseStatus;
	}

	public String getWatchhouseCreateTime() {
		return watchhouseCreateTime;
	}

	public void setWatchhouseCreateTime(String watchhouseCreateTime) {
		this.watchhouseCreateTime = watchhouseCreateTime;
	}

	public Long getWatchhouseId() {
		return watchhouseId;
	}

	public void setWatchhouseId(Long watchhouseId) {
		this.watchhouseId = watchhouseId;
	}

	public String getParkingNo() {
		return parkingNo;
	}

	public void setParkingNo(String parkingNo) {
		this.parkingNo = parkingNo;
	}

	public String getParkingName() {
		return parkingName;
	}

	public void setParkingName(String parkingName) {
		this.parkingName = parkingName;
	}

	public String getDataId() {
		return dataId;
	}

	public void setDataId(String dataId) {
		this.dataId = dataId;
	}

}
